package com.huluobo.day_1_lifecycledemo.viewmodel;

import androidx.lifecycle.MutableLiveData;
import androidx.lifecycle.ViewModel;

/**
 * ViewModel总结
 * 1.实现数据共享,可以看成是一个静态类,其中的数据随时可以更新
 * 2.保持数据的同步性,在任意页面或者类中,可以保证数据的唯一性
 * 3.使用时,不要new这个ViewModel,需要通过new ViewModelProvider(this).get(xxx.class) 这种形式去拿到一个viewModel,this一定要是一个宿主对象(Owner)
 * 4.需要注意在androidx.appcompat:appcompat:1.4.1包下的activity才实现了Owner的接口,1.3之前有实现
 */
public class ADViewModel extends ViewModel {
    //倒计时的总值
    public Long millisInFuture = 10000L;

    //计时结果
    private MutableLiveData<Long> timingResult = new MutableLiveData<>();

    public MutableLiveData<Long> getTimingResult() {
        return timingResult;
    }

    public void setAdTimingResult(Long millisInFuture) {
        timingResult.setValue(millisInFuture);//相当于在UI线程中进行赋值操作
//        timingResult.postValue(millisInFuture);//相当于在子线程中进行赋值操作
    }
}
